The block-based discrete transform is a fundamental component of many image and video compression standards including, for example, the Joint Photographic Experts Group, the International Telecommunication Union, Telecommunication Sector (ITU-T) H.263 Recommendation (hereinafter the “H.263 Recommendation”), the International Organization for Standardization/International Electrotechnical Commission (ISO/IEC) Moving Picture Experts Group-1 (MPEG-1) Standard, the ISO/IEC MPEG-2 Standard, the ISO/IEC MPEG-4 Part 10 Advanced Video Coding (AVC) Standard/ITU-T H.264 Recommendation (hereinafter the “MPEG-4 AVC Standard”), as well as others, and is used in a wide range of applications. Most modern video coding standards employ transforms to efficiently reduce the correlation of the residue in the spatial domain. The discrete cosine transform (DCT) is the most extensively used block transform.
After the transform process, the transform coefficients are quantized. Then, the quantized coefficients are entropy encoded to convey the information of their level and sign. The percentage of zeroed coefficients is very high, so the encoding process is efficient when divided into two steps. In a first step, the locations of the non-zero coefficients are signaled. In a second step, the level and sign of these coefficients are signaled.
An efficient way to encode the locations involves using tree structures. Nevertheless, sending the location of the coefficients can still be quite expensive, because the video content data has varying statistics and properties, and the transform coefficients significance also has different properties depending on the position of the coefficient. However, conventional tree-based encoding of the significance does not properly take into account these varying statistics and properties across the coefficients and the content.